home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
ada
/
c01lab1.zip
/
SIMLATRS
/
SOWS.PTF
< prev
next >
Wrap
Text File
|
1992-11-11
|
9KB
|
217 lines
.SECT File Folder Database Manager
.PP
A File Folder Database Manager maintains a database of the folders
in a filing cabinet. It allows the user to organize the folders by
a taxonomy, specify their locations, and print reports on them.
.PP
For each folder (record), the following information is maintained:
.LIST
.LE
Top-level taxonomy entry (40 characters maximum)
.LE
2nd-level taxonomy entry (40 characters maximum)
.LE
3rd-level taxonomy entry (40 characters maximum)
.LE
Description of folder contents (3 lines of 60 characters/line maximum)
.LE
ID of drawer containing folder (5 characters maximum)
.LE
ID of folder in drawer (5 characters maximum)
.ELIST
.PP
The database manager should perform the conventional database functions
(create, import text files, export text files, add records, delete
records, sort records, etc.) and generate the following reports:
.LIST
.LE
A listing of the database ordered by the three taxonomy entries
.LE
A listing of the unused drawer/folder IDs
.LE
A listing showing the last folder ID for each drawer ID
.ELIST
.sp 2
.SECT Cruise Control System
.PP
A cruise control system maintains a car's speed, even over varying
terrain. The basic idea is that the driver engages the cruise control
system, the car reaches a desired speed, and the driver tells the cruise
control system to start controlling the car's speed.
.PP
If the cruise control system is controlling the car and the driver
touches the brake pedal, the cruise control system stops controlling the
car's speed but remains engaged and remembers the last speed set by
the driver. After touching the brake pedal, if the driver presses the
resume switch, the cruise control system resumes controlling the car at
the last desired speed.
.PP
If the cruise control system is controlling the car and the driver
depresses the accelerator pedal to speed up, the cruise control system
stops controlling the car's speed until the driver releases the
accelerator pedal. After the driver releases the accelerator pedal,
the cruise control system resumes controlling the car at the last
desired speed.
.PP
This problem is the design a cruise control system and a screen-oriented
user interface from the driver's perspective. Through this interface
the driver (at the keyboard) should be able to do the following:
.sp
.li +8
.nf
1. Start the engine
2. Depress the accelerator pedal
3. Depress the brake pedal
4. See the speed of the car (a speedometer reading is displayed)
5. See if the cruise control system is engaged and if it is
currently controlling the car
6. Engage the cruise control system
7. Set the current speed as the desired speed,
allowing the cruise control system to control the car's speed
8. Press the resume switch, allowing the cruise control system
to resume control of the car's speed
9. Disengage the cruise control system
10. Stop the engine
.fi
.li -8
.PP
For the purpose of this problem, an interface to the automobile hardware is
provided by an automobile interface package.
If this exercise were to be extended into
a real application, the only difference would be a change to the package
body of this automobilie interface from a simulation to an actual
hardware-level
interface to the sensors and actuators in the automobile itself.
The following is the package
specification of the automobile interface (tentative, subject to change):
.sp
.li +8
.nf
.include auto.spc
.fi
.li -8
.sp 2
.SECT Spacecraft Environment Monitoring System
.PP
A spacecraft contains a number of sensors which
continuously sample the internal ambient temperature, pressure, and radiation
levels within the spacecraft. The problem is to design and implement
a monitor system in software which
reads the values of these sensors, displays them (using character graphics and
numeric values) on a CRT screen, and checks to ensure that the sensor values
always fall within desired constraints. If any one sensor or combination
of sensors return values which fall outside their constraints, an alarm
indication will be displayed on the screen along with a beeping sound
to attract attention.
.PP
For the purpose of this problem, an interface to the sensor hardware is
provided by a sensor interface package.
If this exercise were to be extended into
a real application, the only difference would be a change to the package
body of this sensor interface from a simulation to an actual hardware-level
interface to the sensors themselves. The following is the package
specification of the sensor interface (tentative, subject to change):
.sp
.li +8
.nf
.include ssi.spc
.fi
.li -8
.sp 2
.SECT Document Concordance Generator
.PP
A
.ul
concordance
is an alphabetical index that shows the places in a document where
each word may be found. For example, a concordance of this paragraph
might appear as:
.sp
.li +8
.nf
.ul
Word Line Number
a 1, 2, 3
alphabetical 1
an 1
appear 3
...
word 2
.fi
.li -8
.PP
Concordances are typically used as an aid in the study of massive works,
such as the Bible or the collected works of Shakespeare. In a slightly
different form, a system that creates a concordance might be used to provide
the functionality of a cross-reference generator for programs or to create
an index.
.PP
This problem is to develop a program that, given the name of a file
containing a document and the name of an output file, produces a
concordance of the document in the output file. The concordance output
file is to contain a heading at the top of each page, a footer at the
bottom of each page with page numbers, and a title page showing the name
of the input file. Articles (the words "a", "an", and "the") are to be
omitted from the concordance. Connectives (the words "and", "or", "then",
and "else") are also to be omitted. Finally, other common words (including
"of", "but", "is", "are", "not", "to", "that", "from", "it", "its", "itself",
"in", "out", "very", "most", "it's", and "also") are to be omitted.
Design the concordance software so this list of omitted words can
be easily changed and the program recompiled.
.sp 2
.SECT "Host at Sea" Buoy System
.PP
The "Host at Sea" buoy system is a group of free-floating buoys that
provide navigation and weather data to air and ship traffic at sea.
The buoys collect data on air and water temperature, wind speed, and
their location through a variety of sensors. Each buoy is equipped with
a radio transmitter (to broadcast weather information, location information,
and an SOS signal) and a radio receiver (to receive requests from passing
vessels). Each buoy is equipped with a yellow light, which can be
activated by a passing vessel during sea-search operations. A sailor
reaching the buoy can flip a switch on the side of the buoy which causes
the buoy to send out an SOS broadcast and flash
a red SOS light.
.PP
Software for each buoy must do the following:
.LIST
.LE
Obtain air and water temperature and wind speed from the buoy's sensors
and broadcast this information.
.LE
Obtain location information from the buoy's sensors and broadcast this
information.
.LE
Activate or deactivate the yellow light based on requests from
passing vessels.
.LE
Continuously broadcast an SOS signal and the red light
after a sailor engages the emergency switch. This continues until
someone disengages the emergency switch. All other activity is taking
place while the SOS broadcast is taking place.
.ELIST
.PP
You are to write a monitor system for all buoys in the world for this
problem. This monitor system will display information about all buoys
that are sending out SOS signals or flashing Yellow. Additionally,
if the temperature of the air or the water exceeds 200 degrees
Fahrenheit, this is an indication of a nuclear explosion, and such
events must appear on the monitor with a warning alarm (beeping sound).
Finally, if the wind speed at a buoy exceeds 50 MPH, a hurricane is
assumed to be present, and this condition sho